package com.yizhu.zczy.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yizhu.zczy.common.utils.PageUtils;
import com.yizhu.zczy.system.entity.MenuEntity;
import com.yizhu.zczy.system.entity.UserEntity;
import com.yizhu.zczy.system.vo.ChangePasswordVo;
import com.yizhu.zczy.system.vo.ShowAdminVo;
import com.yizhu.zczy.system.vo.UserNameAndPassWordVo;

import javax.servlet.http.HttpSession;
import java.util.List;
import java.util.Map;

/**
 * 后台管理员用户表
 *
 * @author guoyz
 * @email guoyz@mail.com
 * @date 2021-06-24 18:31:46
 */
public interface UserService extends IService<UserEntity> {

    IPage<ShowAdminVo>  queryPage(Long page ,Long limit);

    /**
     * 验证账号密码
     * @param userNameAndPassWordVo
     */
    UserEntity verifyAccountPassword(UserNameAndPassWordVo userNameAndPassWordVo);

    /**
     * 用户登录
     * @param userNameAndPassWordVo
     * @param session
     */
    void login(UserNameAndPassWordVo userNameAndPassWordVo, HttpSession session);

    /**
     * 修改密码
     * @param passwordVo
     */
    void changePassword(ChangePasswordVo passwordVo);

    /**
     * 根据登录的用户查询菜单
     * @return
     */
    List<MenuEntity> queryMenuByLoggedinUser();


}

